//
//  CWBaseTableViewController.swift
//  新浪微博练习02
//
//  Created by 曹魏 on 16/9/25.
//  Copyright © 2016年 itcast. All rights reserved.
//

import UIKit
//多继承 oc有多继承吗?如果没有,用什么来代替呢?   协议
//必选的协议方法,必须要实现 否则报错
class CWBaseTableViewController: UITableViewController,CWVisitorLoginViewDelegate {
    var userLogin = CWUserAccountViewModel.sharedAccountViewModel.userLogin
    lazy var visitorView : CWVisitorLoginView = CWVisitorLoginView()
    //loadview就是自定义根视图用的
    override func loadView() {
        if userLogin {
            super.loadView()
        }
        else {
            //创建一个新的视图(访客视图)
//            let visitorView = CWVisitorLoginView()
//            visitorView.backgroundColor = UIColor.yellow
            

            view = visitorView
            //设置访客视图的代理
            visitorView.delegate = self
            
            
        }
        
        
    }
    func userWillRegister() {
        print("注册方法")
    }
    
    //实现协议方法
    //这是通过代理实现的,代理对象是控制器,
    func userWillLogin() {
//        print("登录方法")
        let oauth = CWOAuthViewController()
        //使用push还是modal,   人机交互,执行线性的操作就用push,线性操作被打断就用modal(模态)
        //怎么说呢,其实也就是这个第三方授权登录不是所谓的线性push,具体也将不清楚
        //根据事例模拟器显示,知道模态出来的是一个tanbleview
        //实例化导航控制器
        let nav = UINavigationController(rootViewController: oauth)
        //modal进去这个控制器
        present(nav, animated: true, completion: nil)
        
        
    }
    
    

    override func viewDidLoad() {
        super.viewDidLoad()
        
        
        

    }
   
}


















